home *** CD-ROM | disk | FTP | other *** search
-
- ***************
- Listing 1
- /*
- BY : PETE UPCZAK
-
- COMMENTS : COMPILED UNDER BORLAND INTERNATIONAL`S
- TURBO C, V2.0.
- */
- #include <stdio.h>
- #include <stdlib.h>
- void new_array_name(char *array_copy[])
- {
-
- /*info on array in main()) referenced by different name */
-
- printf("the value returned by 'array_copy' is %xh\n", array_copy);
- printf("the value returned by 'sizeof(array_copy)' is %d\n",
- sizeof(array_copy) );
-
- return;
-
- }
-
- void main ()
- {
- static char *message[] = { /* the object in question */
- "aaaa",
- "bbbb",
- };
-
- void new_array_name (char *[]);
-
- /* info on array element 1 */
- printf("the value returned by '&message[1]' is %xh\n",
- &message[1]);
- printf("the value returned by 'message + 1)' is %xh\n",
- (message + 1) );
- printf("the value returned by '*(message + 1)' is %xh\n",
- *(message + 1));
- printf("the value returned by 'message[1]' is %xh\n",
- message[1] );
- printf("sizeof(*(message + 1)) is %d\n", sizeof(*(message +
- 1)) );
- printf("sizeof(message[1]) is %d\n", sizeof(message[1]) );
- printf("%s, %s\n\n", message [1], *(message + 1) );
-
- /* info on array element 0 */
-
- printf("the value returned by '&message[0]' is %xh\n",
- &message[0] );
- printf("the value returned by 'message' is %xh\n",
- message );
- printf("the value returned by 'message [0]' is %xh\n",
- message [0]);
- printf("the value returned by *message' is %xh\n",
- *message);
- printf("sizeof(*message) is %d\n", sizeof(*message) );
- printf("sizeof(message) is %d\n", sizeof(message[0]) );
- printf("%s, %s\n\n", message[0], *message );
-
- /* info on the copy of the array name */
-
- new_array_name(message);
-
- /* info on the array name itself */
-
- printf("sizeof(&message[0]) is %d\n", sizeof(&message[0]) );
- printf("sizeof(message) is %d\n", sizeof(message) );
-
- }
-
- **************
- OUTPUT FROM PROGRAM:
-
- the value returned by '&message[1]' is 196h
- the value returned by '(message + 1)' is 196h
- the value returned by '*(message + 1)' is 1FBh
- the value returned by 'message[1]' is 1FBh
- sizeof(*message + 1)) is 2
- sizeof(message[1]) is 2
- bbbbb, bbbbb
-
- the value returned by '&message[0]' is 194h
- the value returned by 'message' is 194h
- the value returned by 'message[0]' is 1F5h
- the value returned by '*message' is 1F5h
- sizeof(*message) is 2
- sizeof(message[0]) is 2
- aaaaa, aaaaa
-
- the value returned by 'array_copy' is 194h
- the value returned by 'sizeof(array_copy)' is 2
- sizeof(&message[0]) is 2
- sizeof(message) is 4
-
- ********
-
-